﻿using Himp.Base;
using Himp.Outpatient;
using System;
using System.Collections.Generic;
using System.Text;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;

namespace Himp.Outpatient
{
    /// <summary>
    /// 门诊导诊记录
    /// </summary>
    public class OtpQueueRec : AuditedAggregateRoot<Guid>, IMultiTenant
    {
        /// <summary>
        /// 类别
        /// </summary>
        public EnumOtpNavType OtpNavType { get; set; }

        /// <summary>
        /// 患者Id
        /// </summary>
        public Guid PatnId { get; set; }

        /// <summary>
        /// 就医流水号
        /// 如果是医保 就使用医保 返回的mdtrt_id
        /// 如何是现金 就按照规则生成
        /// </summary>
        public string MdtrtSn { get; set; }

        /// <summary>
        /// 门诊挂号类别Id
        /// </summary>
        public Guid? OtpRgstTypeId { get; set; }

        /// <summary>
        /// 门诊号
        /// </summary>
        public string OtpNo { get; set; }

        /// <summary>
        /// 患者姓名
        /// </summary>
        public string PatnName { get; set; }

        /// <summary>
        /// 性别
        /// </summary>
        public EnumGender Gender { get; set; }

        /// <summary>
        /// 年龄
        /// </summary>
        public int Age { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string PatnTypeName { get; set; }

        /// <summary>
        /// 门诊队列No
        /// </summary>
        public string OtpNavNo { get; set; }

        /// <summary>
        /// 科室Id
        /// </summary>
        public Guid DeptId { get; set; }

        /// <summary>
        /// 科室编码
        /// </summary>
        public string DeptCodg { get; set; }

        /// <summary>
        /// 科室名称
        /// </summary>
        public string DeptName { get; set; }

        /// <summary>
        /// 诊间
        /// </summary>
        public string OperRmCodg { get; set; }

        /// <summary>
        /// 诊间
        /// </summary>
        public string OperRmName { get; set; }

        /// <summary>
        /// 医师Id
        /// </summary>
        public Guid DrId { get; set; }

        /// <summary>
        /// 医师工号
        /// </summary>
        public string DrCodg { get; set; }

        /// <summary>
        /// 医师姓名
        /// </summary>
        public string DrName { get; set; }

        /// <summary>
        /// 入队日期
        /// </summary>
        public DateTime BegnDate { get; set; }

        /// <summary>
        /// 预约时间
        /// </summary>
        public DateTime? RgstTime { get; set; }

        /// <summary>
        /// 签到时间
        /// </summary>
        public DateTime? SignInTime { get; set; }

        /// <summary>
        /// 叫号时间
        /// </summary>
        public DateTime? LastCallTime { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public EnumOtpNavStatus OtpNavStatus { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public Guid? TenantId { get; set; }
    }
}
